iT邦幫忙

第 11 屆 iThome 鐵人賽

DAY 10
1
自我挑戰組

資工系大一課程/日常筆記系列 第 10

[Day 10] 第二堂計算機概論

  • 分享至 

  • xImage
  •  

第一代軟體 (1951 – 1959)

  • 機器語言 (Machine Language)

    • 以二進位(1s 和 0s)編寫的電腦程式
  • 組合語言和翻譯人員 (Assembly Languages and Translators)

    • 使用助記符編寫的程式,這些程式被翻譯成機器語言
  • 程式師更改 (Programmer Changes)

    • 程式師分為兩組:應用程式程式師和系統程式師

裝配/機器

第一代的語言層

digraph {
    "Machine Language" -> "Assembly Languages"
}

第二代軟體 (1959 – 1965)

  • 高階語言 (High-Level Languages)
    • 類似英語的語句使程式設計變得更容易:Fortran, COBOL, Lisp

第二代的語言層

digraph {
    "Machine Language" -> "Assembly Languages" -> "High-Level Languages"
}

第三代軟體 (1965 – 1971)

  • 系統軟體 (Systems Software)

    • 實用程式
    • 語言翻譯
    • 作業系統,它決定運行哪些程式以及何時運行
  • 使用者和硬體之間的分離 (Separation Between Users and Hardware)

    • 電腦程式員編寫一般公共程式(即非程式師)使用的程式

圍繞硬體的軟體層繼續增長

digraph {
    "Machine Language" -> "Assembly Languages" -> "High-Level Languages" -> "Systems Software" -> "Application packages"
}

第四代軟體 (1971 – 1989)

  • 結構化程式設計 (Structured Programming)

    • Pascal
    • C++
  • 面向使用者的新應用軟體 (New Application Software for Users)

    • 電子表格
    • 文字處理器
    • 資料庫管理系統

第五代軟體 (1990 - )

  • 微軟 (Microsoft)

    • Windows 作業系統和其他微軟應用程式主導市場
  • 物件導向設計 (Object-Oriented Design)

    • 基於資料物件的層次結構(即 JAVA)
  • 全球資訊網 (World Wide Web)

    • 通過互聯網輕鬆進行全球通信
  • 新使用者 (New Users)

    • 現在的使用者無需電腦知識

電腦軟體的演進的三面向

  1. 程式語言
  2. 系統軟體
  3. 應用軟體

電腦軟體的演進(整理)

1st 2nd 3rd 4th 5th
程式語言 機器語言 (Machine Language)/組合語言 (Assembly Languages) +高階語言 (High-Level Languages) 同前 結構化程式設計 (Structured Programming) 物件導向語言 (Object-Oriented Language)
系統軟體 組譯器 (Assembler) +編譯器 (Compiler) OS OS Windows
應用軟體 個別程式 個別程式 套裝軟體 個人生產力軟體(e.g. MS Office) 瀏覽器 (Browser)
user 要懂硬體 要會寫程式 一般專業人士 一般人士 所有人

組譯器 Assembler

digraph {
    "Assembly Languages" -> "Assembler" -> "Machine Language"
}

編譯器 Compiler

digraph {
    "High-Level Languages" -> "Compiler" -> "Machine Language"
}

系統區域示例 (Examples of Systems Areas)

  • 演算法和資料結構 (Algorithms and data structures)
  • 程式設計語言 (Programming languages)
  • 結構 (Architecture)
  • 作業系統 (Operating systems)
  • 軟體工程 (Software engineering)
  • 人機通信 (Human–computer communication)

應用領域示例 (Examples of Application Areas)

  • 數值和符號計算 (Numerical and symbolic computation)
  • 資料庫和資訊檢索 (Databases and information retrieval)
  • 智慧系統 (Intelligent systems)
  • 圖形和視覺化計算 (Graphics and visual computing)
  • 以網路為中心的計算 (Net-centric computing)
  • 計算科學 (Computational science)

計算的大創意 (Big Ideas of Computing)

  • 創造力 (Creativity)
  • 抽象 (Abstraction)
  • 資料和資訊 (Data and information)
  • 演算法 (Algorithms)
  • 程式設計 (Programming)
  • 互聯網 (The Internet)
  • 全球影響 (Global impact)

Ch.2 Binary Values and Number Systems

數字 (Numbers)

  • 自然數 (Natural Numbers)
  • 負數 (Negative Numbers)
  • 整數 (Integers)
  • 有理數 (Rational Numbers)

位置標記法 (Positional Notation)

642是?

  • 600 × 40 × 2
    • BASE 10 (Decimal)
  • 384 × 32 × 2
  • 1536 × 64 × 2

進制

十進位 (Decimal) 是基於10且有10個符號:
0, 1, 2, 3, 4, 5, 6, 7, 8, 9

二進位 (Binary) 是基於2且有2個符號:
0, 1

十六進位有16個符號
0, 1, 2, 3, 4, 5, 6, 7, 8, 9, A, B, C, D, E, F


上一篇
[Day 9] 第二堂微積分
下一篇
[Day 11] 第二堂離散數學
系列文
資工系大一課程/日常筆記30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言